<template>
  <div id="app">
    <router-view></router-view>
  </div>
</template>

<script>
import { getShareData, getOpenId } from '@/api/http.js'
import wx from "weixin-js-sdk";
export default {
  data() {
    return {
      isReload: true,
      appId: 'wx89289c3a3da01e68', //微信公众号唯一标识，在微信公众号后台获取
      title: '每年一次脑健康筛查！',  //分享内容的标题
      desc: '做脑健康筛查也能领红包了，快来看看吧~', // 分享内容的简短描述
      link: 'https://www.ainaoxingdong.com/brainshare/index.html',
      imgUrl: 'https://www.ainaoxingdong.com/api/an-media/images/share.png', //必须是绝对路径,
      t: '',
      n: '',
      s: '',
    }
  },
  mounted() {
    // 初始化调接口 
    // this.getKeyParams()

  },
  created() {
    sessionStorage.setItem('scanUrl', 'https://www.ainaoxingdong.com/brainshare/index.html')
    var token = localStorage.getItem('token')
  },
  methods: {
   getKeyParams() {
      getShareData({ url: sessionStorage.getItem('scanUrl') }).then((result) => {
        console.log('result', result);
        this.t = result.data.timestamp
        this.n = result.data.nonceStr
        this.s = result.data.signature
        //拿到三个参数之后，调用wxConfig方法进行权限验证
        this.shareMes()

        console.log('@@@@@', this.t, this.n, this.s);
      });
    },
    shareMes() {
      wx.config({
        // 配置参数
        debug: false, // 开启调试模式,调用的所有api的返回值会在客户端alert出来，若要查看传入的参数，可以在pc端打开，参数信息会通过log打出，仅在pc端时才会打印。
        appId: this.appId, // 必填，公众号的唯一标识
        timestamp: this.t, // 必填，生成签名的时间戳
        nonceStr: this.n, // 必填，生成签名的随机串
        signature: this.s, // 必填，签名
        jsApiList: [
          'onMenuShareTimeline', 'onMenuShareAppMessage', 'updateAppMessageShareData', 'updateTimelineShareData'
        ]
      });
      this.wxShare();
      console.log('hihihi');
    },
    wxShare() {
      const that = this
      wx.ready(() => {
        wx.updateAppMessageShareData({
          title: this.title, // 分享标题
          desc: this.desc,// 分享描述
          link: this.link, // 分享链接，该链接域名或路径必须与当前页面对应的公众号JS安全域名一致
          imgUrl: this.imgUrl, // 分享图标
          success: function () {
            // 用户确认分享后执行的回调函数
          }
        });
        wx.updateTimelineShareData({
          title: this.title, // 分享标题
          desc: this.desc, // 分享描述
          link: this.link, // 分享链接，该链接域名或路径必须与当前页面对应的公众号JS安全域名一致
          imgUrl: this.imgUrl, // 分享图标
          success: function () {
            // 用户确认分享后执行的回调函数
          }
        });
      });
      wx.error(function (res) {
        console.log('生成微信签名失败了');
        // config信息验证失败会执行error函数，如签名过期导致验证失败，具体错误信息可以打开config的debug模式查看，也可以在返回的res参数中查看，对于SPA可以在这里更新签名。
      })
    },
    // 获取code
    getweixinCode() {
      this.code = ''
      var local = location.href.split('#')[0] // 获取页面url
      var appid = 'wx89289c3a3da01e68'
      this.code = this.getUrlCode().code // 截取code
      if (this.code == null || this.code === '') { // 如果没有code，则去请求
        window.location.href =
          `https://open.weixin.qq.com/connect/oauth2/authorize?appid=${appid}&redirect_uri=${encodeURIComponent(local)}&response_type=code&scope=snsapi_userinfo&state=123#wechat_redirect`
      }

      let token = localStorage.getItem('token')
      if (token) {
        console.log('code', this.code);
        getOpenId(this.code).then((res) => {
          console.log(res);
          this.openId = res.data.openId
          localStorage.setItem('openId', res.data.openId)
        })
      } else {
        this.$router.push('/guidepage')
      }

    },
    getUrlCode() {
      // 截取url中的code方法
      var url = location.search
      console.log('此页面', url);
      var theRequest = new Object()
      if (url.indexOf("?") != -1) {
        var str = url.substr(1)
        var strs = str.split("&")
        for (var i = 0; i < strs.length; i++) {
          theRequest[strs[i].split("=")[0]] = (strs[i].split("=")[1])
        }
      }
      console.log('theRequest', theRequest);
      return theRequest
    },
  },
}
</script>

<style>
* {
  margin: 0;
  padding: 0;
}

#app {
  height: 100%;
  background-color: #F9F9F9;
  /* overflow-x: hidden; */
}
</style>
